使用Github Pages搭建轻博客[4]
使用Markdown书写博客并生成页面

第2节中介绍了使用jade作为模板引擎生成html页面文件。

回顾一下generate.js的代码:

var jade = require('jade');
var fs = require('fs');

var fn = jade.compileFile('index.jade', { 'pretty': true });

var html = fn({ 'content': '<span>hello</span>' });

fs.writeFileSync('index.html', html);

content的html片段可以是从文件中读取。

但是用html直接来写博客,内容的排版很不方便。

Markdown

Markdown是一种轻量级的标记语言,简练的语法用来写作博客、排版很方便。

marked可以帮助我们将markdown翻译为html。

安装marked:

npm install marked --save

使用也很简单:

var marked = require('marked');
console.log(marked('I am using __markdown__.'));
// Outputs: <p>I am using <strong>markdown</strong>.</p>

因此,之前的generate.js可以修改为如下:

var jade = require('jade');
var fs = require('fs');
var marked = require('marked');

var fn = jade.compileFile('index.jade', { 'pretty': true });

var content = fs.readFile('blog.md');

var html = fn({ 'content': marked(content) });

fs.writeFileSync('index.html', html);

其中blog.md文件里面是使用markdown写作好的博客文章。 使用marked转换为html片段后,再使用jade模板生成完整的html页面。